package com.hmkj.core.api.umf.domain;

import com.hmkj.core.api.umf.domain.base.BaseServiceRequest;

/**
 * @author Created by 陌上人 on 2077/7/7 15:10.
 *
 * 直连付款请求domain
 */
public class FuKuanServiceRequest extends BaseServiceRequest {

    /**
     * 收款方账户类型
     * 00-----银行卡
       02-----U付
     */
    private String recvAccountType;

    /**
     * 收款方账户属性
     * 对私	0
       对公	1
     */
    private String recvBankAccPro;

    /**
     * 收款方账号
     * GBK编码后使用联动公钥进行RSA加密，最后使用BASE64编码.
         类型为
            00是银行卡号;
            02为u付账号
     */
    private String recvAccount;

    /**
     * 收款方户名
     * GBK编码后使用联动公钥进行RSA加密，最后使用BASE64编码.
     收款账户类型为00，为银行卡户名
     02为u付账户名
     */
    private String recvUserName;

    /**
     * 收款方证件类型  01-----身份证
     */
    private String identityType;

    /**
     * 收款方平台预留证件号码
     * GBK编码后使用联动公钥进行RSA加密，最后使用BASE64编码.
     */
    private String identityCode;

    /**
     * 证件持有人真实姓
     * GBK编码后使用联动公钥进行RSA加密，最后使用BASE64编码.
     */
    private String identityHolder;

    /**
     * 媒介类型
     */
    private String mediaType;

    /**
     * 媒介值 付款方平台预留手机号码
     */
    private String mediaId;

    /**
     * 收款方账户的发卡
     * 收款方账户类型为00且收款方账户属性为1时必填
       见附录-支持银行列表
     */
    private String recvGateId;

    /**
     * 摘要
     * 收款方账户类型为00时必填（不能超过超过10个汉字，多余将拒绝）
     */
    private String purpose;

    /**
     * 省
     */
    private String provName;

    /**
     * 市
     */
    private String cityName;

    /**
     * 开户行支行全称
     * 收款方账户类型为00时必填
        开户行支行全称
     */
    private String bankBrhname;

    /**
     * 付款实时和非实时标识
     * 0:实时付款产品此字段要填写为0【需要开通实时付款产品】
     * 1:非实时付款此字段为1【默认为1】
     */
    private String checkFlag;

    /**
     * 收款方手机号
     */
    private String mobileNo;

    public String getRecvAccountType() {
        return recvAccountType;
    }

    public void setRecvAccountType(String recvAccountType) {
        this.recvAccountType = recvAccountType;
    }

    public String getRecvBankAccPro() {
        return recvBankAccPro;
    }

    public void setRecvBankAccPro(String recvBankAccPro) {
        this.recvBankAccPro = recvBankAccPro;
    }

    public String getRecvAccount() {
        return recvAccount;
    }

    public void setRecvAccount(String recvAccount) {
        this.recvAccount = recvAccount;
    }

    public String getRecvUserName() {
        return recvUserName;
    }

    public void setRecvUserName(String recvUserName) {
        this.recvUserName = recvUserName;
    }

    public String getIdentityType() {
        return identityType;
    }

    public void setIdentityType(String identityType) {
        this.identityType = identityType;
    }

    public String getIdentityCode() {
        return identityCode;
    }

    public void setIdentityCode(String identityCode) {
        this.identityCode = identityCode;
    }

    public String getIdentityHolder() {
        return identityHolder;
    }

    public void setIdentityHolder(String identityHolder) {
        this.identityHolder = identityHolder;
    }

    public String getMediaType() {
        return mediaType;
    }

    public void setMediaType(String mediaType) {
        this.mediaType = mediaType;
    }

    public String getMediaId() {
        return mediaId;
    }

    public void setMediaId(String mediaId) {
        this.mediaId = mediaId;
    }

    public String getRecvGateId() {
        return recvGateId;
    }

    public void setRecvGateId(String recvGateId) {
        this.recvGateId = recvGateId;
    }

    public String getPurpose() {
        return purpose;
    }

    public void setPurpose(String purpose) {
        this.purpose = purpose;
    }

    public String getProvName() {
        return provName;
    }

    public void setProvName(String provName) {
        this.provName = provName;
    }

    public String getCityName() {
        return cityName;
    }

    public void setCityName(String cityName) {
        this.cityName = cityName;
    }

    public String getBankBrhname() {
        return bankBrhname;
    }

    public void setBankBrhname(String bankBrhname) {
        this.bankBrhname = bankBrhname;
    }

    public String getCheckFlag() {
        return checkFlag;
    }

    public void setCheckFlag(String checkFlag) {
        this.checkFlag = checkFlag;
    }

    public String getMobileNo() {
        return mobileNo;
    }

    public void setMobileNo(String mobileNo) {
        this.mobileNo = mobileNo;
    }
}
